Índice

[[#Cómo crear un Playbook en Conversational Agents]]
[[#Configuración de Playbooks Objetivos, Instrucciones y Herramientas]]
[[#Tipos de herramientas de Playbook en Conversational Agents]]
[[#La importancia de los ejemplos en los Playbooks]]
[[#Acciones Condicionales]]
[[#Bloques de código (Code Blocks) en los Playbooks]]
[[#Configuración de Parámetros en los Playbooks]]
[[#Agentes Híbridos Flujos y Playbooks]]
[[#Errores comunes al crear agentes conversacionales y cómo evitarlos]]


Cómo crear un Playbook

Antes de empezar, debes conocer los componentes clave del flujo de trabajo:


El proceso de 4 pasos (es un proceso iterativo)

1. Crear un nuevo Playbook

2. Editar pasos y objetivos (Crear herramientas y parámetros)

3. Crear ejemplos

4. Probar tu Playbook

Este proceso es iterativo. Al probar, es probable que tengas que volver a los pasos anteriores para refinar objetivos, pasos, herramientas, parámetros y ejemplos. Es una mejora continua.


Cómo crear un Playbook en Conversational Agents

Actualmente, hay dos formas de acceder a la consola para crear un agente conversacional:

  1. Desde la consola de Vertex AI Applications, seleccionando Conversational Agents para crear una nueva aplicación.

  2. Directamente desde la consola de Conversational Agents, haciendo clic en Crear agente.

Opciones de creación de agentes

Una vez en la consola, tienes tres opciones:

Configuración inicial del agente

Al elegir "Build your own", debes configurar lo siguiente:

Elegir el tipo de flujo de trabajo

El agente debe tener un punto de partida para la conversación. Puedes elegir entre:

En este caso, eliges Playbook.

Creación y gestión de Playbooks

Una vez que has seleccionado Playbook, puedes empezar a crearlo y a configurar sus componentes clave:

Un agente conversacional puede tener más de un Playbook. Puedes navegar entre ellos, importarlos o incluso versionarlos para tener diferentes puntos de partida para la conversación.


Configuración de Playbooks: Objetivos, Instrucciones y Herramientas

1. Objetivos (Goals)

Un objetivo es la descripción general de lo que el Playbook debe lograr. Es una guía para el LLM.

2. Instrucciones (Instructions)

Las instrucciones definen el proceso paso a paso para cumplir el objetivo del Playbook.

3. Llamadas a otros flujos (Flows) o Playbooks

Para dirigir la conversación a flujos de trabajo especializados, puedes usar los siguientes parámetros:

4. Herramientas (Tools)

Las herramientas son integraciones externas que el Playbook puede llamar para realizar acciones.

5. Ejemplos

Los ejemplos son demostraciones de cómo debería ser una buena conversación. Sirven para:

Estos elementos te dan las herramientas para construir un Playbook que no solo razone, sino que también actúe de manera inteligente para resolver las consultas del usuario.


Tipos de herramientas de Playbook en Conversational Agents

Las herramientas (Tools) son un concepto fundamental en los Playbooks. Permiten a los agentes conversacionales ir más allá de la información que ya tienen, interactuando con sistemas externos. Un Playbook usa una herramienta para combinar datos externos con las capacidades de un LLM.

Hay cuatro tipos principales de herramientas:

1. Herramientas de OpenAPI

Estas herramientas te permiten conectar tu agente a cualquier API REST externa.

2. Herramientas de funciones (Functions)

Este tipo se utiliza cuando necesitas ejecutar código en el cliente, no a través de una API.

3. Herramientas de Conectores (Connectors)

Son integraciones pre-construidas por Google que permiten a los agentes interactuar con servicios de terceros populares.

4. Herramientas de Almacenes de Datos (Data Stores)

Permiten al agente usar tus propios datos para responder preguntas, sin necesidad de crear una API.


La importancia de los ejemplos en los Playbooks

La ingeniería de prompts es una técnica nueva y sensible. Es fundamental recordar que los LLMs no siempre son predecibles. Por eso, no puedes depender solo de las instrucciones. La calidad y cantidad de tus ejemplos de entrenamiento son cruciales para lograr un comportamiento preciso en el agente.

Cómo crear un buen ejemplo

Consejos adicionales


Acciones Condicionales

Las acciones condicionales son una configuración opcional en los Playbooks que te dan un control explícito sobre el comportamiento de un agente.

Puedes establecer disparadores (triggers) y condiciones que, al cumplirse, activan una acción específica.


Cómo funcionan las acciones condicionales

La configuración de una acción condicional se divide en tres pasos:

  1. Definir el disparador (Trigger): Elige el momento en que se activará la lógica condicional.

    • Etapas del ciclo de vida:

      • Inicio del Playbook.

      • Antes de que el LLM decida su siguiente acción.

      • Antes de que el LLM ejecute la siguiente acción.

    • Eventos personalizados: Por ejemplo, cuando hay un evento específico o no hay entrada del usuario.

  2. Establecer las condiciones: Define los criterios que deben cumplirse para que la acción se ejecute.

    • Ejemplos de condiciones:

      • Un parámetro de sesión o de entrada existe.

      • Una acción previa o la siguiente del LLM coincide con un valor.

  3. Configurar la acción: Elige qué debe hacer el agente si se cumplen las condiciones.

    • Tipos de acciones:

      • Dar una respuesta específica al usuario.

      • Llamar a una herramienta externa.

      • Invocar a otro Playbook.

      • Anular la siguiente acción del LLM.

      • Cambiar la configuración de la voz.


Ejemplo de un caso de uso

Imagina que quieres que el agente muestre un carrusel con opciones para que el usuario elija su problema.

De esta manera, las acciones condicionales te permiten tener un control preciso, garantizando que el agente se comporte de la manera que esperas en situaciones específicas.


Bloques de código (Code Blocks) en los Playbooks

Los bloques de código son una característica clave que te permite usar código Python directamente dentro de un Playbook para tener un mayor control sobre el comportamiento del agente.

Estos bloques le dan a los Playbooks la capacidad de ser más deterministas, es decir, de actuar de una manera más predecible, similar a un flujo tradicional.

Componentes de un bloque de código

Un bloque de código está formado por dos partes principales:

  1. Acciones (Actions):

    • Son como las llamadas a herramientas, con un esquema de entrada y salida definido.

    • La lógica interna está escrita en Python. El LLM solo ve la entrada y la salida, y no sabe lo que sucede dentro del código. Esto te permite realizar tareas complejas que no se pueden explicar fácilmente en lenguaje natural.

  2. Disparadores (Triggers):

    • Funcionan de manera similar a los manejadores de eventos en los flujos.

    • Te permiten especificar cuándo debe ejecutarse una acción.

¿Por qué son importantes?

Los bloques de código son una forma innovadora de añadir un comportamiento predecible a un agente de IA generativa. Mientras que los flujos conversacionales tradicionales usan IA generativa en contextos y estados predefinidos, los bloques de código te dan la flexibilidad para definir acciones que no serían posibles solo con lenguaje natural, como llamar a otros flujos para salir de la sesión actual y dirigir al usuario hacia un proceso más estructurado.


Tipos de Playbooks: Tarea vs. Rutina

Un agente generativo puede tener varios Playbooks, cada uno diseñado para una tarea específica. Existen dos tipos:


Manejo de Parámetros

La forma en que se manejan los parámetros es una de las principales diferencias entre ambos tipos de Playbooks.

Recomendación: Siempre declara explícitamente los parámetros críticos que necesitas en un Playbook de Tarea. El resumen de la conversación generado por el agente no es una forma confiable de hacer que estos parámetros estén disponibles.


Configuración de Parámetros en los Playbooks

Los parámetros son una parte esencial de la creación de Playbooks porque permiten que los flujos de trabajo se comuniquen entre sí. Los Playbooks pueden tener dos tipos de parámetros:

Proceso de configuración

  1. Definir los parámetros: Primero, tienes que definir qué parámetros de entrada y salida usará tu Playbook.

  2. Usar los parámetros en un ejemplo: Una vez definidos, debes crear un ejemplo de cómo se usan.

    • En el ejemplo de la transcripción, la clave moniker se usa para pasar un parámetro del flujo, y la clave poem_state con el valor done se usa para enviar un estado de vuelta al flujo.

Al configurar los parámetros correctamente, aseguras que los Playbooks y los flujos puedan intercambiar información de manera fluida y efectiva.


Agentes Híbridos: Flujos y Playbooks

Un agente híbrido combina el comportamiento determinista de los flujos (Flows) con la flexibilidad de los Playbooks. La integración entre ambos es fluida y te permite aprovechar lo mejor de cada uno.

Invocando Flujos desde un Playbook

Puedes llamar a un flujo dentro de un Playbook siempre que el flujo ya exista.

Invocando Playbooks desde un Flujo

La transición opuesta también es posible. Puedes dirigir la conversación desde un flujo tradicional a un Playbook de manera muy sencilla, seleccionando la opción de Playbook en el menú de transición del flujo.

Diferencia entre Playbooks y Generadores

Es importante no confundir los Playbooks con los generadores (Generators) y los recursos de retorno generativos (Generative Fallback). Estas son características mutuamente excluyentes.


Cómo aprender a crear Playbooks

Una excelente forma de aprender es a través de los agentes pre-construidos que Google proporciona.


Errores comunes al crear agentes conversacionales y cómo evitarlos

Al desarrollar agentes conversacionales, es común enfrentarse a varios problemas. Aquí te mostramos los más frecuentes y cómo solucionarlos.

1. Falta de criterios de lanzamiento

No definir las condiciones para la puesta en marcha (go-live) desde el principio puede llevar a retrasos y proyectos fallidos.

2. Mala planificación de pruebas

No tener un plan de pruebas claro y bien definido desde el inicio.

3. Querer hacer demasiado, muy pronto

Intentar construir múltiples casos de uso a la vez, lo que puede sobrecargar el equipo.

4. Configuración y selección de modelo inadecuada

No usar los modelos recomendados o no mantenerse al día con las mejores prácticas.

5. Expectativas poco realistas

Creer que el agente funcionará perfectamente desde el primer día.

6. Falta de conocimiento y habilidades en el equipo

Empezar un proyecto sin la capacitación adecuada.

7. Transferencia de datos inexacta

No manejar adecuadamente la transferencia de datos entre diferentes tipos de Playbooks.